package com.power.domain;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
    * 商品
    */
@ApiModel(value="com-power-commonbase-domain-Prod")
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class Prod implements Serializable {
    /**
    * 产品ID
    */
    @ApiModelProperty(value="产品ID")
    private Long prodId;

    /**
    * 商品名称
    */
    @ApiModelProperty(value="商品名称")
    private String prodName;

    /**
    * 店铺id
    */
    @ApiModelProperty(value="店铺id")
    private Long shopId;

    /**
    * 原价
    */
    @ApiModelProperty(value="原价")
    private BigDecimal oriPrice;

    /**
    * 现价
    */
    @ApiModelProperty(value="现价")
    private BigDecimal price;

    /**
    * 简要描述,卖点等
    */
    @ApiModelProperty(value="简要描述,卖点等")
    private String brief;

    /**
    * 详细描述
    */
    @ApiModelProperty(value="详细描述")
    private String content;

    /**
    * 商品主图
    */
    @ApiModelProperty(value="商品主图")
    private String pic;

    /**
    * 商品图片，以,分割
    */
    @ApiModelProperty(value="商品图片，以,分割")
    private String imgs;

    /**
    * 默认是1，表示正常状态, -1表示删除, 0下架
    */
    @ApiModelProperty(value="默认是1，表示正常状态, -1表示删除, 0下架")
    private Integer status;

    /**
    * 商品分类
    */
    @ApiModelProperty(value="商品分类")
    private Long categoryId;

    /**
    * 销量
    */
    @ApiModelProperty(value="销量")
    private Integer soldNum;

    /**
    * 总库存
    */
    @ApiModelProperty(value="总库存")
    private Integer totalStocks;

    /**
    * 配送方式json见TransportModeVO
    */
    @ApiModelProperty(value="配送方式json见TransportModeVO")
    private String deliveryMode;

    /**
    * 运费模板id
    */
    @ApiModelProperty(value="运费模板id")
    private Long deliveryTemplateId;

    /**
    * 录入时间
    */
    @ApiModelProperty(value="录入时间")
    private Date createTime;

    /**
    * 修改时间
    */
    @ApiModelProperty(value="修改时间")
    private Date updateTime;

    /**
    * 上架时间
    */
    @ApiModelProperty(value="上架时间")
    private Date putawayTime;

    /**
    * 版本 乐观锁
    */
    @ApiModelProperty(value="版本 乐观锁")
    private Integer version;

    private static final long serialVersionUID = 1L;
}